
/*
    Software License

    Copyright (C) 2021-05-24  Xoronos

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, version 3.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.
*/

/*
    Liabilities

    The software is provided "AS IS" without any warranty of any kind, either expressed,
    implied, or statutory, including, but not limited to, any warranty that the software
    will conform to specifications, any implied warranties of merchantability, fitness
    for a particular purpose, and freedom from infringement, and any warranty that the
    documentation will conform to the software, or any warranty that the software will
    be error free.

    In no event shall Xoronos be liable for any damages, including, but not limited to,
    direct, indirect, special or consequential damages, arising out of, resulting from,
    or in any way connected with this software, whether or not based upon warranty,
    contract, tort, or otherwise, whether or not injury was sustained by persons or
    property or otherwise, and whether or not loss was sustained from, or arose out of
    the results of, or use of, the software or services provided hereunder.

    To request the provided software under a different license you can contact us at
    support@xoronos.com
*/

#ifndef XORON_EXAMPLES_H
#define XORON_EXAMPLES_H

int generate_xrn_matrix_one_third(
 );
int generate_xrn_matrix_all_rnd(
 );
int generate_keys_with_wrapper_functions(
 );
int check_xrn_matrix(
 );
int split_join_encryption_wrapper(
 );
int split_join_encryption_bytes_wrapper(
 );
int encrypt_symmetric_wrapper(
 );
int encrypt_symmetric_bytes_wrapper(
 );
int encrypt_asymmetric_wrapper(
 );
int encrypt_asymmetric_bytes_wrapper(
 );
int hash_bytes_wrapper(
 );
int hash_file_wrapper(
 );
int symmetric_signature_file_wrapper(
 );
int symmetric_signature_bytes_wrapper(
 );
int asymmetric_signature_file_wrapper(
 );
int asymmetric_signature_bytes_wrapper(
 );
int pseudo_random_number_generator_wrapper(
 );
int ring_signature_file_wrapper(
 );
int ring_signature_bytes_wrapper(
 );
int monomial_key_exchange(
 );
int certificate_symmetric(
 );
int certificate_asymmetric(
 );
int zero_knowledge_proof_binomial_key(
 );
int zero_knowledge_proof_signature(
 );
int zero_knowledge_proof_signature_bytes(
 );
int zero_knowledge_proof_certificate(
 );
int hash_file_compare_wrapper(
 );
int hash_bytes_compare_wrapper(
 );
int permute_xrn_matrix_compressed_rnd(
 );
int permute_xrn_matrix_compressed_deterministic(
 );
int permute_xrn_matrix_compressed_key(
 );
int encoding_decoding_file_wrapper(
 );
int encoding_decoding_bytes_wrapper(
 );
int polyvalent_key_exchange(
 );
int checksum_dump_file_wrapper(
 );
int checksum_dump_bytes_wrapper(
 );
int create_blocks_from_file(
 );
int create_blocks_from_bytes(
 );
int steganography_block_bytes(
 );
int steganography_block_file(
 );
int steganography_raw_bytes(
 );
int steganography_raw_file(
 );
#endif
